#ifndef PATHFILTER_H
#define PATHFILTER_H

#include <mutex>
#include <vector>
#include "filter.h"

class PathFilter : public Filter {
public:
    explicit PathFilter(const std::vector<std::wstring> &pathList);

    ~PathFilter() override = default;

    bool Handle(const ProcessInfo &process) override;

    void Update() override;

private:
    void Init();

    std::vector<std::wstring> trustedPathList;

    std::vector<std::wstring> installedPathList;

    std::mutex updateLock = {};
};

#endif
